package com.ruoyi.dispatch.service;

import java.util.List;
import java.util.Map;

import com.ruoyi.dispatch.domain.OnDutyReport;

/**
 * 调度值班Service接口
 * 
 * @author wuxiaofang
 * @date 2025-04-09
 */
public interface IOnDutyReportService 
{
    /**
     * 查询调度值班
     * 
     * @param dutyId 调度值班主键
     * @return 调度值班
     */
    public OnDutyReport selectOnDutyReportByDutyId(Long dutyId);

    /**
     * 查询调度值班列表
     * 
     * @param onDutyReport 调度值班
     * @return 调度值班集合
     */
    public List<OnDutyReport> selectOnDutyReportList(OnDutyReport onDutyReport);

    /**
     * 新增调度值班
     * 
     * @param onDutyReport 调度值班
     * @return 结果
     */
    public int insertOnDutyReport(OnDutyReport onDutyReport);

    /**
     * 修改调度值班
     * 
     * @param onDutyReport 调度值班
     * @return 结果
     */
    public int updateOnDutyReport(OnDutyReport onDutyReport);

    /**
     * 批量删除调度值班
     * 
     * @param dutyIds 需要删除的调度值班主键集合
     * @return 结果
     */
    public int deleteOnDutyReportByDutyIds(Long[] dutyIds);

    /**
     * 删除调度值班信息
     * 
     * @param dutyId 调度值班主键
     * @return 结果
     */
    public int deleteOnDutyReportByDutyId(Long dutyId);

    /**
     * 组装自定义查询展示的列名信息
     * @param columnArray 列名数组
     * @return
     */

    public List<Map<String,String>> handleColumnMap(String[] columnArray);

    public  List<OnDutyReport> copyRecentlyMonthReport(String targetMonth);
}
